def grade(score):
    if score >= 90:
        return '优'
    elif score < 90 and score >= 80:
        return '良'
    elif score < 80 and score >= 70:
        return '中等'
    elif score < 70 and score >= 60:
        return '及格'
    else:
        return '不及格'

def get_valid_score():
    while True:
        try:
            score = float(input("请输入学生的成绩（0-100）："))
            if 0 <= score <= 100:
                return score
            else:
                print("错误：成绩必须在0到100之间。")
        except ValueError:
            print("错误：请输入一个有效的数字。")

# 尝试获取有效成绩
while True:
    try:
        score = get_valid_score()
        # 调用函数并打印结果
        print("成绩等级：", grade(score))
        break  # 成功获取成绩后退出循环
    except Exception as e:
        print("发生未知错误：", e)
        # 可以选择在这里继续提示用户输入，或者退出程序
        # 如果选择继续，可以去掉 break 语句

# 注意：实际使用中可能需要更详细的错误处理逻辑